//package org.useCode.redis;
//
//import com.google.common.collect.Lists;
//import com.google.common.collect.Sets;
//import redis.clients.jedis.ShardedJedis;
//import redis.clients.jedis.ShardedJedisPool;
//
//import java.util.ArrayList;
//import java.util.List;
//import java.util.Map;
//import java.util.Set;
//import java.util.logging.Logger;
//
///**
// * REDIS工具类
// */
//public class RedisUtil {
//
////    private static final Logger LOGGER = LoggerFactory.getLogger(RedisUtil.class);
//
//    private ShardedJedisPool shardedJedisPool;
//    protected boolean use;
//    private int defaultExpireTime = 3 * 60 * 60;////默认3小时
//    protected static final String CHARSET = "UTF-8";
//
//    public void setexBySerialize(String key, int seconds, Object val) {
//        ShardedJedis shardedJedis = null;
//
//        try {
//            shardedJedis = (ShardedJedis)this.shardedJedisPool.getResource();
//            shardedJedis.setex(key, seconds, val == null ? null : xstream.toXML(val));
//            return;
//        } catch (Exception var9) {
//        } finally {
//            if (null != shardedJedis) {
//                shardedJedis.close();
//            }
//        }
//    }
//
//    public Object getBySerialize(String key) {
//        if (!this.use) {
//            return null;
//        } else {
//            ShardedJedis shardedJedis = null;
//
//            Object var4;
//            try {
//                shardedJedis = (ShardedJedis)this.shardedJedisPool.getResource();
//                String string = shardedJedis.get(key);
//                if (string != null) {
//                    return var4;
//                }
//                var4 = null;
//            } catch (Exception var8) {
//
//                var4 = null;
//                return var4;
//            } finally {
//                if (null != shardedJedis) {
//                    shardedJedis.close();
//                }
//            }
//            return var4;
//        }
//    }
//
//    public String ltrim(String key, long start, long end) {
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            return shardedJedis.ltrim(key, start, end);
//        } catch (Exception var8) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//        return "";
//    }
//
//    public void rpush(String key, String... value) {
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            shardedJedis.rpush(key, value);
//        } catch (Exception var8) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//    }
//
//    public void lpush(String key, String... value) {
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            shardedJedis.lpush(key, value);
//        } catch (Exception var8) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//    }
//
//    public Long llen(String key) {
//        if (!this.use) {
//            return null;
//        }
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            return shardedJedis.llen(key);
//        } catch (Exception var8) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//        return null;
//    }
//
//    public List<String> lrange(String key, int start, int end) {
//        if (!this.use) {
//            return Lists.newArrayList();
//        }
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            return shardedJedis.lrange(key, (long) start, (long) end);
//        } catch (Exception var10) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//        return Lists.newArrayList();
//    }
//
//    public void lset(String key, int index, String value) {
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            shardedJedis.lset(key, (long) index, value);
//        } catch (Exception var9) {
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//    }
//
//    public String lpop(String key) {
//        if (!this.use) {
//            return null;
//        }
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            return shardedJedis.lpop(key);
//        } catch (Exception e) {
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//        return null;
//    }
//
//    public String rpop(String key) {
//        if (!this.use) {
//            return null;
//        }
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            return shardedJedis.rpop(key);
//        } catch (Exception e) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//        return null;
//    }
//
//    public boolean exists(String key) {
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            return shardedJedis.exists(key);
//        } catch (Exception e) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//        return false;
//    }
//
//    public Long del(String key) {
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            return shardedJedis.del(key);
//        } catch (Exception e) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//        return 0L;
//    }
//
//    public void set(String key, String val) {
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            shardedJedis.setex(key, this.defaultExpireTime, val);
//        } catch (Exception e) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//    }
//
//    @SuppressWarnings({ "rawtypes", "unchecked" })
//	public void hmset(String key, Map val) {
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            shardedJedis.hmset(key, val);
//        } catch (Exception e) {
//
//        } finally {
//            if (null != shardedJedis){
//                shardedJedis.close();
//            }
//        }
//    }
//
//    public void set(String key, String val, int expireTime) {
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            shardedJedis.setex(key, expireTime, val);
//        } catch (Exception e) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//    }
//
//    public void set(String key, String val, boolean expire) {
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            if (expire) {
//                shardedJedis.setex(key, this.defaultExpireTime, val);
//            } else {
//                shardedJedis.set(key, val);
//            }
//        } catch (Exception e) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//    }
//
//    public String get(String key) {
//        if (!this.use) {
//            return null;
//        }
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            String e = shardedJedis.get(key);
//            if (StringUtils.isNotBlank(e) && e.startsWith("<") && e.endsWith(">")) {
//                e = null;
//                this.del(key);
//            }
//            return e;
//        } catch (Exception e) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//        return null;
//    }
//
//    public String getSet(String key, String value) {
//        if (!this.use) {
//            return null;
//        }
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            return shardedJedis.getSet(key, value);
//        } catch (Exception e) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//        return null;
//    }
//
//    public List<String> hmget(String redisKey, String key) {
//        if (!this.use) {
//            return null;
//        }
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            return shardedJedis.hmget(redisKey, key);
//        } catch (Exception e) {
//
//        } finally {
//            if (null != shardedJedis){
//                shardedJedis.close();
//            }
//        }
//        return null;
//    }
//
//    public void lrem(String key, Integer count, String val) {
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            shardedJedis.lrem(key, count.longValue(), val);
//        } catch (Exception e) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//    }
//
//    public void sadd(String key, String val) {
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            shardedJedis.sadd(key, new String[]{val});
//        } catch (Exception e) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//    }
//
//    public String spop(String key) {
//        if (!this.use) {
//            return null;
//        }
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            return shardedJedis.spop(key);
//        } catch (Exception e) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//
//        }
//        return null;
//    }
//
//    public Set<String> smembers(String key) {
//        if (!this.use) {
//            return Sets.newHashSet();
//        }
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            return shardedJedis.smembers(key);
//        } catch (Exception e) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//        return Sets.newHashSet();
//    }
//
//    public int scard(String key) {
//        if (!this.use) {
//            return 0;
//        }
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            Long e = shardedJedis.scard(key);
//            return e.intValue();
//        } catch (Exception e) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//        return 0;
//    }
//
//    public void expire(String key, int num) {
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            shardedJedis.expire(key, num);
//        } catch (Exception e) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//    }
//
//    public void setex(String key, int seconds, String value) {
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            shardedJedis.setex(key, seconds, value);
//        } catch (Exception e) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//    }
//
//    public void psetex(String key, long milliseconds, String value) {
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            shardedJedis.psetex(key, milliseconds, value);
//        } catch (Exception e) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//    }
//
//    public void srem(String key, String val) {
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            shardedJedis.srem(key, new String[]{val});
//        } catch (Exception e) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//    }
//
//    public boolean sismember(String key, String member) {
//        if (!this.use) {
//            return false;
//        }
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            return shardedJedis.sismember(key, member);
//        } catch (Exception e) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//        return false;
//    }
//
//    public Long incr(String key) {
//        if (!this.use) {
//            return null;
//        }
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            return shardedJedis.incr(key);
//        } catch (Exception e) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//        return null;
//    }
//
//    public Long decr(String key) {
//        if (!this.use) {
//            return null;
//        }
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            return shardedJedis.decr(key);
//        } catch (Exception e) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//        return null;
//    }
//
//    public Long hincrBy(String key, String field, long value) {
//        if (!this.use) {
//            return null;
//        }
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            return shardedJedis.hincrBy(key, field, value);
//        } catch (Exception e) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//        return null;
//    }
//
//    public boolean hmexite(String key, String field) {
//        if (!this.use) {
//            return false;
//        }
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            return shardedJedis.hexists(key, field);
//        } catch (Exception var9) {
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//        return false;
//    }
//
//    public Long hgetNum(String key, String field) {
//        if (!this.use) {
//            return null;
//        }
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            String e = shardedJedis.hget(key, field);
//            if (StringUtils.isBlank(e)) {
//                return 0L;
//            }
//            return Long.valueOf(e);
//        } catch (Exception var9) {
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//        return null;
//    }
//
//    public Long hsetnx(String key, String field, String value) {
//        if (!this.use) {
//            return null;
//        }
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            return shardedJedis.hsetnx(key, field, value);
//        } catch (Exception var10) {
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//        return null;
//    }
//
//    public Map<String, String> hgetAll(String key) {
//        if (!this.use) {
//            return null;
//        }
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            return shardedJedis.hgetAll(key);
//        } catch (Exception e) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//        return null;
//    }
//
//    public void zadd(String key, double score, String member) {
//        if (!this.use) {
//            return;
//        }
//        if (StringUtils.isBlank(key)) {
//            return;
//        }
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            shardedJedis.zadd(key, score, member);
//        } catch (Exception e) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//    }
//
//    public void zrem(String key, String member) {
//        if (!this.use) {
//            return;
//        }
//        if (StringUtils.isBlank(key)) {
//            return;
//        }
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            shardedJedis.zrem(key, new String[]{member});
//        } catch (Exception e) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//    }
//
//    public Double zscore(String key, String member) {
//        Double result;
//        if (!this.use) {
//            return null;
//        }
//        if (StringUtils.isBlank(key)) {
//            return null;
//        }
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            result = shardedJedis.zscore(key, member);
//            return result;
//        } catch (Exception e) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//        return null;
//    }
//
//    public List<String> zquery(String key, long start, long end, boolean isAsc) {
//        if (!this.use) {
//            return Lists.newArrayList();
//        }
//        if (StringUtils.isBlank(key)) {
//            return Lists.newArrayList();
//        }
//
//        ShardedJedis shardedJedis = null;
//        try {
//            ArrayList<String> list;
//            try {
//                shardedJedis = this.shardedJedisPool.getResource();
//                Set<String> set;
//                if (isAsc) {
//                    set = shardedJedis.zrange(key, start, end);
//                } else {
//                    set = shardedJedis.zrevrange(key, start, end);
//                }
//
//                if (set == null || set.isEmpty()) {
//                    return Lists.newArrayList();
//                }
//                list = new ArrayList<String>();
//
//                for (String s : set) {
//                    list.add(s);
//                }
//                return list;
//            } catch (Exception var15) {
//                return Lists.newArrayList();
//            }
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//    }
//
//    public long zcard(String key) {
//        if (!this.use) {
//            return 0L;
//        }
//        if (StringUtils.isBlank(key)) {
//            return 0L;
//        }
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            return shardedJedis.zcard(key);
//        } catch (Exception e) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//        return 0L;
//    }
//
//    public String hget(String key, String field) {
//        if (!this.use) {
//            return null;
//        }
//        if (StringUtils.isBlank(key) || StringUtils.isBlank(field)) {
//            return null;
//        }
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            return shardedJedis.hget(key, field);
//        } catch (Exception e) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//        return null;
//    }
//
//    public Long hdel(String key, String... fields) {
//        if (!this.use) {
//            return null;
//        }
//        if (StringUtils.isBlank(key) || ArrayUtils.isEmpty(fields)) {
//            return null;
//        }
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            return shardedJedis.hdel(key, fields);
//        } catch (Exception e) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//        return null;
//    }
//
//    public Long hset(String key, String field, String value) {
//        if (!this.use) {
//            return 0L;
//        }
//        if (StringUtils.isBlank(key) || StringUtils.isBlank(field) || StringUtils.isBlank(value)) {
//            return 0L;
//        }
//        ShardedJedis shardedJedis = null;
//        Long result;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            Long expireTime = shardedJedis.pttl(key);
//            result = shardedJedis.hset(key, field, value);
//            if (expireTime <= 0) {
//                shardedJedis.expire(key, this.defaultExpireTime);
//            }
//
//            return result;
//        } catch (Exception e) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//        return 0L;
//    }
//
//    public Long hset(String key, String field, String value, int expireTime){
//    	if (!this.use) {
//            return 0L;
//        }
//        if (StringUtils.isBlank(key) || StringUtils.isBlank(field) || StringUtils.isBlank(value)) {
//            return 0L;
//        }
//        ShardedJedis shardedJedis = null;
//        Long result;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            result = shardedJedis.hset(key, field, value);
//            shardedJedis.expire(key, expireTime);
//            return result;
//        } catch (Exception e) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//        return 0L;
//    }
//
//    public void sadd(String key, String... member) {
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = this.shardedJedisPool.getResource();
//            shardedJedis.sadd(key, member);
//        } catch (Exception e) {
//
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//    }
//
//    public long setnx(String key, String value) {
//        ShardedJedis shardedJedis = null;
//        long returnVal = 0L;
//        try {
//            shardedJedis = shardedJedisPool.getResource();
//            returnVal = shardedJedis.setnx(key, value);
//            if (returnVal == 1L) {
//                shardedJedis.expire(key, defaultExpireTime);
//            }
//        } catch (Exception e) {
//
//            return returnVal;
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//        return returnVal;
//    }
//
//    public long setnx(String key, String value, int seconds) {
//        ShardedJedis shardedJedis = null;
//        long returnVal = 0L;
//        try {
//            shardedJedis = shardedJedisPool.getResource();
//            returnVal = shardedJedis.setnx(key, value);
//            if (returnVal == 1L) {
//                shardedJedis.expire(key, seconds);
//            }
//        } catch (Exception e) {
//
//            return returnVal;
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//        return returnVal;
//    }
//
//    public long saddExt(String key, String val) {
//        ShardedJedis shardedJedis = null;
//        try {
//            shardedJedis = shardedJedisPool.getResource();
//            return shardedJedis.sadd(key, val);
//        } catch (Exception e) {
//
//            return 0L;
//        } finally {
//        	 if (null != shardedJedis){
//             	shardedJedis.close();
//             }
//        }
//    }
//
//    public void setDefaultExpireTime(int defaultExpireTime) {
//        this.defaultExpireTime = defaultExpireTime;
//    }
//
//    public void setShardedJedisPool(ShardedJedisPool shardedJedisPool) {
//        this.shardedJedisPool = shardedJedisPool;
//    }
//
//    public boolean isUse() {
//        return this.use;
//    }
//
//    public void setUse(boolean use) {
//        this.use = use;
//    }
//}
//
